package factoryNCastle;

import interfaces.ActionInterface;

import constants.*;

import interfaces.impl.actions.ActionModifySpetialFeature;
import interfaces.impl.actions.ActionMove;
import actions.ActionAddEffect;
import actions.ActionAttack;
import actions.ActionGenerateObject;
import actions.ActionIncreaseMoney;
import actions.ActionTeleport;

public class ActionFactory {

	public static ActionInterface getAction(int actionId) {
		
		switch(actionId){
		case Constants.ACTION_ATTACK:
			return new ActionAttack();
		
		case Constants.ACTION_MOVE:
			return new ActionMove();
			
		case Constants.ACTION_INCREASE_MONEY:
			return new ActionIncreaseMoney();
			
		case Constants.ACTION_MODIFY_SPETIAL_FEATURE:
			return new ActionModifySpetialFeature();
			
		case Constants.ACTION_GENERATE_OBJECT:
			return new ActionGenerateObject();
			
		case Constants.ACTION_TELEPORT:
			return new ActionTeleport();
			
		case Constants.ACTION_ADD_EFFECT:
			return new ActionAddEffect();
			
		}
		System.out.println("NO TENGO LA ACCION QUE BUSCO EN ACTION FACTORY");
		return null;
	}

}
